package com.cq.hd.order.service;

import com.cq.hd.order.param.SettleParam;
import com.cq.hd.order.po.TbOrderItemPo;

/**
 * 订单结算service
 */
public interface OrderSettleService {

    /**
     * 结算任务
     */
    void settleTask();

    /**
     * 子订单结算积分[停用]
     */
    void subOrderSettlePointsTask();

    /**
     * 下单人积分结算
     */
    void settleUserPointsTask();

    /**
     * 经纪人积分结算
     */
    void settleAgentPointsTask();

    /**
     * 对子订单进行结算
     *
     * @param orderItem 子订单信息
     */
    void settle(SettleParam settleParam, TbOrderItemPo orderItem);

}
